<html>
<head>
<title>Jena contrib guidelines page</title>
<link rel="stylesheet" type="text/css" href="../styles/doc.css" />
</head>
<body>

<h1>guidelines for contributors</h1>

<h2>request for listing</h2>

<p>Send a message to
<a href="mailto:jena-devel@lists.sourceforge.net">jena-devel</a>,
with a helpful title, asking for your contribution to be
added to the page. Describe your contribution using N3
with at least the following:

<pre>
@prefix dc:     &lt;http://purl.org/dc/elements/1.1/&gt; .
@prefix ct:     &lt;http://jena.hplb.hpl.hp.com/contrib#&gt; .

[]
    dc:creator "your name"
    ; dc:name "your contribution's name"
    ; dc:description "a <i>short</i> description"
    ; ct:link URLforDownloadAccess
    ; ct:linkTitle "title for link"
    ; ct:licence LICENCE
    .
</pre>

<p>The <i>ct:link</i> value should be the URL of the download, or
of a webpage that describes the contribution and gives access
to the download. The <i>ct:linkTitle</i> value will be used
for the title of the link in the contribution table.

<p>The <i>ct:licence</i> value should <i>briefly</i> define the
licence for the contribution; further details should appear
on your webpage or within the contribution itself.

<p>All being well, the N3 will be added to the
<a href="contributions.n3">contributions document</a>
and will be used to generate an entry in the
<a href="contributions.html">contributions page</a>.

<h2>guidelines for contributions</h2>

<p>Multiple-file contributions should be bundled into a single
archive file, typically a <i>.zip</i> file. Pathnames in
the file should be relative.

<h3>Java code</h3>

<p>We recommend that Java code be bundled in the same style as
Jena itself. So the zip should have a structure like this:

<ul>
<li>a README[.t[e]xt] which sumarises the contribution and
    links to any documentation.

<li>a <i>src</i> directory containing the source code tree.

<li>a <i>lib</i> directory containing any required jars.
    The contribution's own jar can appear here.

<li>a <i>doc</i> directory for any documentation.

<li>an Ant buildfile (typically <i>build.xml)</i>. Even
    if the user isn't expected to build from source, the
    buildfile can have a <i>test</i> target for running
    your contribution's tests.

<li>a clear statement of your contribution's licence.

</ul>

<h4>package names</h4>

Contributions to Jena should use package names appropriate to
the contributors, not names from the Jena package space. (The
contributions to Jena by Jena team members naturally are exempt.)

<h3>ontologies</h3>

<p>Your ontology should have a URI (not a <strong>file:</strong> URI).
If possible, that URL should be the URL from which the ontology content
can be downloaded.

</body>
</html>
